package service;

import java.util.List;

import persistence.model.TdfkfaExpertList;
import presentation.extendmodel.SimpleExpertModel;
import presentation.extendmodel.TdfkfaExpertListEx;
import presentation.queryvo.ExpertListQueryVO;

public interface ExpertService {

    public List<TdfkfaExpertListEx> getExpertList(ExpertListQueryVO queryVO, int pageIndex, int pageSize);

    public int countExpert(ExpertListQueryVO queryVO);

    /**
     * 取得在审专家数据
     * 
     * @return
     */
    public List<TdfkfaExpertListEx> getJudgingExpertList(ExpertListQueryVO queryVO, int pageIndex, int pageSize);
    
    /**
     * 取得在审专家数量
     */
    public int countJudgingExpert(ExpertListQueryVO queryVO);

    public int saveExpert(TdfkfaExpertList expert);

    public List<String> getExpertUnitList();

    public List<String> getExpertNameList(String unit);

    public List<TdfkfaExpertList> getExpertList(String unitName);

    public void deleteExpert(Integer[] ids);

    public int updateExpert(TdfkfaExpertList expert);
    
    public TdfkfaExpertList getExpert(Integer expertId);
    
    public List<SimpleExpertModel> getSimpleExpertList(ExpertListQueryVO queryVO);

	public TdfkfaExpertList getExpertByUsername(String username);
}
